package com.whnk.pm.service;

import com.whnk.pm.domain.SignInfo;
import com.whnk.pm.dto.SignSyncDTO;

import java.text.ParseException;
import java.util.List;

/**
 * 项目考勤 服务层
 * 
 * @author whwhnk
 * @date 2019-07-12
 */
public interface ISignInfoService 
{
	/**
     * 查询项目考勤信息
     * 
     * @param signId 项目考勤ID
     * @return 项目考勤信息
     */
	public SignInfo selectSignInfoById(Integer signId);
	
	/**
     * 查询项目考勤列表
     * 
     * @param signInfo 项目考勤信息
     * @return 项目考勤集合
     */
	public List<SignInfo> selectSignInfoList(SignInfo signInfo);
	
	/**
     * 新增项目考勤
     * 
     * @param signInfo 项目考勤信息
     * @return 结果
     */
	public int insertSignInfo(SignInfo signInfo);
	
	/**
     * 修改项目考勤
     * 
     * @param signInfo 项目考勤信息
     * @return 结果
     */
	public int updateSignInfo(SignInfo signInfo);
		
	/**
     * 删除项目考勤信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	public int deleteSignInfoByIds(String ids);

	/**
	 * 同步考勤
	 * @param signSyncDTO
	 */
    void syncSignInfo(SignSyncDTO signSyncDTO);

    void manualSign(String empId, String proName) throws ParseException;

    void manualSignOut(String empId, String proName) throws ParseException;
}
